1. Field of the Invention
The present invention relates generally to methods and apparatuses for direct communication with a backup network device via a failover cable. Specifically, the present invention provides in one embodiment a failover cable for direct communication between two network devices wherein one of the network devices serves as a backup for the other network device. The failover cable includes a primary end which terminates in a primary connector and a backup end which terminates in a backup connector. The failover cable includes a primacy selection loop at the primary end that identifies the primary end. Which network device is primary and which network device is secondary is determined by the end of the failover cable that is plugged in to each network device. In addition, the failover cable includes a local plug detect loop that provides verification that the cable is plugged in to a local socket. When connected to a properly configured remote socket, the cable and remote socket include a remote plug detect loop that provides verification that the cable is plugged in to a properly configured remote socket.
2. Description of the Related Art
Services provided over networks, intranets, and internets have been increasing in complexity. As a result, increasingly complex schemes have been developed to respond to client generated network traffic and service requests. In some of these schemes, a single device is placed on the network that is responsible to direct packets to other devices or to filter packets that are bound for a number of other devices for some purpose such as security or load balancing. Such devices, when implemented, are critical to the operation of a network because they often represent a single point of failure that may prevent either the entire network or a substantial portion of the network from functioning.
One such critical device is a Local Director as described in U.S. patent application Ser. Nos. 08/850,248, 08/850,730 and 08/850,836 which were incorporated by reference above. In one implementation, the Local Director is a device for spreading connections made by clients to a given IP address among a number of servers. The Local Director includes a session distribution scheme that efficiently distributes the connection load among a group of servers by determining which server available to it is likely to be able to efficiently handle the load.
In a forward multiplexing mode, the Local Director not only distributes connections for a single IP address to many network devices, but also distributes connections for many different IP addresses to different ports of a single network device that runs applications that service connections for the different IP addresses. The Local Director may implement a large number of virtual network devices which service connections using a set of physical network devices that are made available to the Local Director. The system is an especially robust one because certain physical network devices can be configured as backups for other physical network devices that support a virtual network device. In fact, in one embodiment, virtual network devices that each access a group of physical network devices to handle connections may be defined as backups for each other.
The flexibility of the Local Director in selecting different physical or virtual network devices to handle incoming connection requests is an advantage since failure of individual network devices will not seriously degrade network performance so long as other physical network devices available to the Local Director are capable of assuming more of the load. On the other hand, the presence of the Local Director on the network as a central distribution point that distributes connections among a large number of physical network devices could present a significant danger for catastrophic system failure. The Local Director is a potential single point of failure that could prevent the use of potentially all of the servers connected to it. Such a single point of failure in a network system is unacceptable in many systems.
A reliable failover system for providing a backup for a Local Director is described in co-pending U.S. patent application Ser. No. 08/918,024, filed concurrently herewith, which was previously incorporated by reference for all purposes. In the described system, network functions are transferred from an active network device to a standby device that is configured the same as the active device but does not become active until the active device fails. The active device and the standby device communicate with each other both over the network and over a separate failover cable. When a positive determination is made that the active device has failed, the backup device becomes active and assumes the duties of the failed active device.
This procedure occurs without the need for other network devices to change the MAC or IP address to which they are directing packets. The backup network device takes over the active MAC and IP addresses from the failed network device and supports connections made to those addresses. In certain situations, the failover cable is used by the backup to send a message to the active device that it has failed so that it will stop using the active MAC address and IP address and any switches in the system can learn that the network has been reconfigured and that the active MAC address has moved. In addition to communicating failure events, the failover cable also provides a reliable link on which the active network device downloads its initial configuration and subsequent configuration changes to the backup network device so that the backup network device can take over when necessary.
The failover cable thus represents a critical link between the primary network device and the secondary network device. It would therefore be desirable if the status of the cable, that is whether the cable is plugged or unplugged and which end is unplugged, could be readily determined so that the failover system could avoid switching to a backup or performing any other operation that relies on the failover cable. In addition, it would be desirable if the failover cable could provide a direct verification that each of the network devices has power so that power failures could be detected directly and instantly without requiring communication between the two network devices. Finally, it would be desirable if the failover cable could be used to elect which one of the network devices is the primary or backup device, so that other configuration of the network devices would not be required. Finally, it would be desirable if a failover cable could be provided that uses a standard cable configuration.
In view of the foregoing, there is a needed for a failover cable that could effectively provide the above described features.